Skip to main content

Español

Instalar paquetes de Python

Requisitos para instalar paquetes

Requerimientos para instalar paquetes en red (debe tener acceso a Internet)

  • Conectarse a login0 de MareNostrum4:

    mylaptop$> ssh {username}@mn0.bsc.es
    IMPORTANTE

    El login0 de MareNostrum4 está restringido al personal del BSC y sólo es accesible desde la red interna del BSC o la Red Privada Virtual (VPN).

  • Comprobar la conectividad a Internet desde login0:

    $> wget --tries=3 --timeout=5 -q --spider google.com && echo "Networked" || echo "Non-networked"
    Networked

Comprobar el intérprete de Python

  • Cargar Python en la sesión, por ejemplo:

    $> module purge && module load intel mkl python/3.10.2
  • Asegúrese de que puede ejecutar Python desde la línea de comandos:

    $> which python3
    /apps/PYTHON/3.10.2/INTEL/bin/python3
    $> python3 --version
    Python 3.10.2

Comprobar el gestor de paquetes 'pip'

pip es el instalador de paquetes recomendado, que permite la instalación de paquetes desde PyPI (Python Package Index), proyectos locales, o directamente desde archivos de distribución. También es compatible con el control de versiones.

"python3 -m pip" ejecuta pip usando el intérprete de Python que especificó como python3.

  • Asegúrese de que puede ejecutar pip desde la línea de comando:

    $> python3 -m pip --version
    pip 21.2.4 from /apps/PYTHON/3.10.2/INTEL/lib/python3.10/site-packages/pip (python 3.10)

Instalar y gestionar paquetes

Instalar paquetes

  • Instalar un paquete desde PyPI:

    $> python -m pip install SomePackage            # Última versión
    $> python -m pip install "SomePackage==1.0.4" # Versión específica
    $> python -m pip install "SomePackage>=1.0.4" # Mínima versión
  • Instalar un paquete localmente (desde PyPI):

    $> python3 -m pip install --user SomePackage    # En ubicación de usuario por defecto

    O:

    $> export PYTHONUSERBASE=/path/to/my/python/local/project
    $> python3 -m pip install --user SomePackage
  • Instalar una lista de paquetes especificados en un archivo de requisitos:

    $> python3 -m pip install -r requirements.txt

    Quizá desee hacer algo como esto:

    SomePythonEnv$> python3 -m pip freeze > requirements.txt

    MyPythonEnv$> python3 -m pip install -r requirements.txt
  • Instalar paquetes desde un archivo fuente:

    $> python3 -m pip install SomePackage-1.0.4.tar.gz

Actualizar paquetes

  • Actualizar un paquete ya instalado a la última versión de PyPI:

    $> python3 -m pip install --upgrade SomePackage

    # Las dependencias se actualizan solo cuando no cumplen
    # los requisitos de los paquetes actualizados

    O:

    $> python3 -m pip install SomePackage --upgrade --upgrade-strategy eager

    # Las dependencias se actualizan independientemente de si
    # la versión instalada actualmente cumple con los requisitos
    # de los paquetes actualizados

Desinstalar paquetes

  • Desinstalar un paquete:

    $> python3 -m pip uninstall SomePackage
    $> python3 -m pip uninstall SomePackage --yes # No pedir confirmación, también '-y'
  • Desinstalar una lista de paquetes desde un archivo de requisitos:

    $> python3 -m pip uninstall -r requirements.txt [--yes, -y]

Verificación de paquetes instalados

  • Mostrar la lista de paquetes existentes:

    $> python3 -m pip list          # Paquetes que están instalados globalmente
    $> python3 -m pip list --user # Paquetes que están instalados localmente

    O:

    $> python3 -m pip freeze
    $> python3 -m pip freeze --user

    También puede ser útil:

    $> python3 -m pip list [--user] | grep -i SomePackage
    $> python3 -m pip freeze [--user] | grep -i SomePackage
  • Mostrar la lista de paquetes obsoletos (y mostrar la última versión disponible):

    $> python3 -m pip list --outdated
  • Mostrar ubicación de paquetes existentes:

    $> python3 -m site              # Paquetes instalados globalmente
    $> python3 -m site --user-site # Paquetes instalados localmente
  • Mostrar detalles de un paquete específico:

    $> python3 -m pip show SomePackage
  • Verificar compatibilidad entre dependencias de paquetes:

    $> python3 -m pip check
    No broken requirements found. # Lo deseable

Trabajar con entornos